package com.niodata.dp.task.service;

import com.niodata.dp.task.entity.PluginCategoryCountSta;
import com.niodata.dp.task.entity.PluginDocument;
import com.niodata.dp.task.entity.PluginDocumentView;
import com.niodata.dp.task.entity.PluginPackageView;
import java.util.List;

public interface PluginHubManager {

  public PluginCategoryCountSta getPluginCategoryCount();

  public List<PluginPackageView> getPlugins(
      String sysCategory,
      String funcCategory,
      String nameContains,
      int offset,
      int maxCount);

  public PluginDocument getPluginDocument(String name, String version);

  public PluginDocumentView getPluginDocumentView(String name, String version);

  public PluginDocumentView getPluginDocumentView(String pkgId);

  public void incrDownTimes(String name, String version, int increment);

}
